Section: Research Program
Polychronous model of computation
We consider a partially-ordered set of tags to denote instants seen as symbolic periods in time during which a reaction takes place. The relation says that occurs before . Its minimum is noted 0. A totally ordered set of tags is called a chain and denotes the sampling of a possibly continuous or dense signal over a countable series of causally related tags. Events, signals, behaviors and processes are defined as follows:
In the remainder, we write for the tags of a signal , for the domain of , for the projection of a behavior on a set of names and for its complementary.
Figure 1 depicts a behavior over three signals named , and . Two frames depict timing domains formalized by chains of tags. Signals and belong to the same timing domain: is a down-sampling of . Its events are synchronous to odd occurrences of events along and share the same tags, e.g. . Even tags of , e.g. , are ordered along its chain, e.g. , but absent from . Signal belongs to a different timing domain. Its tags are not ordered with respect to the chain of .
Composition
Synchronous composition is noted and defined by the union of all behaviors (from ) and (from ) which hold the same values at the same tags for all signal they share. Figure 2 depicts the synchronous composition (Figure 2 , right) of the behaviors (Figure 2 , left) and the behavior (Figure 2 , middle). The signal , shared by and , carries the same tags and the same values in both and . Hence, defines the synchronous composition of and .
Scheduling
A scheduling structure is defined to schedule the occurrence of events along signals during an instant . A scheduling is a pre-order relation between dates where represents the time and the location of the event. Figure 3 depicts such a relation superimposed to the signals and of Figure 1 . The relation , for instance, requires to be calculated before at the instant . Naturally, scheduling is contained in time: if then for any and and if then .
Structure
A synchronous structure is a semi-lattice representing behaviors with the same timing structure. We interpret a signal as an elastic with ordered marks on it (tags). If the elastic is stretched, marks remain in the same relative (partial) order but have more space (time) between each other. The same holds for a set of elastics: a behavior. If elastics are equally stretched, the order between marks is unchanged.
In Figure 4 , the time scale of and changes but the partial timing and scheduling relations are preserved. Stretching is a partial-order relation which defines clock equivalence. Formally, a behavior is a stretching of of same domain, written , iff there exists an increasing bijection on tags that preserves the timing and scheduling relations. If so, is the image of by . Last, the behaviors and are said clock-equivalent, written , iff there exists a behavior s.t. and .